#pragma once
#include <Python.h>
#include <atomic>
#include <shared_mutex>
#include <vector>
#include "pyobjautoptr.h"
#include "threadfreevec.h"
#pragma comment(lib,"pyobjautoptr.lib")
#include "pyobjsize.h"
class pydatavec {
public:
	pydatavec(unsigned long long);
	void dataadd(PyObject*);
	PyObject* dataget();
protected:
	unsigned long long vecsizemax;
	threadfreevec<pyobjautoptr> vec;
	pyobjsize objcheck;
	std::atomic <unsigned long long> vecsize ;
	unsigned int ptrsize;
};